/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.itschapala.dsw2.controlcobros.Bl;

import Enumeraciones.Estado;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import mx.itschapala.dsw2.controlcobros.dao.UsuarioDaoLocal;
import mx.itschapala.dsw2.controlcobros.modelo.Usuario;

/**
 *
 * @author Maricela
 */
@Stateless
public class UsuarioBl implements UsuarioBlLocal {
    @EJB
    private UsuarioDaoLocal usuarioDao;

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")
    
  @Override
    public Estado register(Usuario user) {
        if (usuarioDao.findDuplicity(user)){
            return Estado.INCOMPLETE;
        }else {
            usuarioDao.create(user);
            return Estado.COMPLETE;
        } 
    }

    @Override
    public Estado delete(Usuario user) {
        if (user.getId() != null || usuarioDao.find(user.getId()) != null){
        usuarioDao.remove(user);
            return Estado.COMPLETE;
        }else {
            return Estado.INCOMPLETE;
        }
    }

    @Override
    public Estado modify(Usuario user) {
        if (user.getId() == null || usuarioDao.find(user.getId()) == null){
            return Estado.INCOMPLETE;
        }else {
          usuarioDao.edit(user);
            return Estado.COMPLETE;
        }
    }
    @Override
    public Usuario findById(Integer id) {
        return usuarioDao.find(id);
        
    }
    @Override
    public List<Usuario> getAll() {
        return usuarioDao.findAll();
    }
}
